In a typical cellular radio system, mobile terminals (also referred to as user equipment, UEs, wireless terminals, and/or mobile stations) may communicate via a radio access network (RAN) with one or more core networks, which may provide access to data networks, such as the Internet, and/or to the public-switched telecommunications network (PSTN). A RAN covers a geographical area that is divided into cell areas, with each cell area being served by a radio base station (also referred to as a base station, a RAN node, a “NodeB”, and/or an enhanced NodeB or “eNodeB”). A cell area is a geographical area over which radio coverage is provided by the base station equipment at a base station site. The base stations communicate through radio communication channels with wireless terminals within range of the base stations.
Cellular communications system operators have begun offering mobile broadband data services based on, for example, WCDMA (Wideband Code-Division Multiple Access), HSPA (High-Speed Packet Access), and Long Term Evolution (LTE) wireless technologies. Fueled by the introduction of new devices designed for data applications, end user performance requirements continue to increase. Accordingly, techniques that allow cellular operators to manage data traffic more efficiently are desired.
To improve throughput in wireless communication systems, the Internet Engineering Task Force (IETF) has begun work on a Multipath Transmission Control Protocol (MPTCP) specification that is directed to extending the TCP protocol to provide the ability to simultaneously use multiple paths between user nodes (peers). MPTCP may be particularly useful in the context of Fixed Mobile Convergence (FMC), which enables a mobile terminal or other communication node to switch from mobile wireless connectivity to a mobile service provider network to fixed connectivity through a fixed access device that is within the range of the mobile terminal. The fixed access device may be located in a residence, business, or other location and may include a residential/business gateway that has a broadband connection to the Internet and provides a radio link to the mobile terminal (e.g., Wi-Fi wireless access point). Rather than switching exclusively from mobile wireless connectivity through a mobile service provider to fixed wireless connectivity through a fixed access point, MPTCP enables a mobile device to maintain simultaneous connections through both types of connections.
FIG. 1 illustrates a conventional network system 100 that facilitates communications between a source node 130 and a destination node 140 using MPTCP connectivity. The system 100 includes a broadband network Gateway (BNG) 125, a Radio Access Network (RAN) 105, a packet data network Gateway (PDN GW) 110, a broadband packet data network 120 (e.g., the Internet), and can include other network elements. In the example system 100, end nodes, such as the source node 130, can establish a radio link to the RAN 105 using one or more wireless communication protocols, such as the aforementioned WCDMA or LTE protocols, to communicate data packets through the PDN GW 110 and the packet data network 120 to other nodes, such as the destination node 140. The source node 130 can also establish a radio link to the BNG 125 using, for example, Wi-Fi (e.g., IEEE 802.11) or WiMAX, to communicate data packets through the BNG 125 and the packet data network 120.
The PDN GW 110 provides packet data connectivity between the node 130 and the packet data network 120, and serves as an anchor for node mobility between 3GPP and non-3GPP radio connections. The PDN GW 110 can perform policy enforcement, packet filtering, and/or charging support for all traffic flowing from/to the node 130. The PDN GW 110 assigns a home Internet Protocol (IP) address (e.g., IPv6 address) to the node 130, which is included in the header of data packets sent from/to the node 130.
Using MPTCP, a single TCP interface is presented to applications at the source node 130, while data is actually sent to the destination node 140 over multiple IP flows, illustrated as dashed lines in FIG. 1. That is, the source node 130 can selectively route data packet traffic through the PDN GW 110 and the packet data network 120 (e.g., illustrated as IP flow 1) to the destination of 140 or, alternatively, route data packet traffic through the BNG 125 and the packet data network 120 to the destination of 140 while bypassing the PDN GW 110 (e.g., illustrated as IP flow 2). This routing is transparent to the application layer at the source node 130, and can increase throughput between the source node 130 and the destination node 140.
MPTCP can be illustrated in the network models of FIGS. 2A and 2B. FIG. 2A illustrates the OSI and TCP/IP network layer models along with some of the various logical protocols that can be used to implement the respective layers. For example, the OSI model defines an application, presentation, session, transport, network, data link and physical network layers. The application layer provides high-level APIs, including resource sharing, remote file access, directory services, etc. The presentation layer provides translation of data between a networking service and an application, including such functions as character encoding, data compression and encryption/decryption. The session layer manages communication sessions between two end nodes.
The transport layer provides reliable transmission of data segments between points on a network, including data segmentation, packet acknowledgement and multiplexing. The network layer provides for addressing, routing and traffic control of data packets that are formed from segments provided by the transport layer. The data link layer provides reliable transmission of data frames built from packets provided by the network layer between two nodes connected by a physical layer. Finally, the physical layer provides for transmission and reception of raw bit streams over a physical medium.
The TCP/IP model is primarily concerned with the transport and network layers of the OSI model. Thus, in the TCP/IP model, the application, presentation and session layers of the OSI model are treated as a single application layer, while the data link and physical layers are treated as a single network access layer.
Transport layer protocols typically include transmission control protocol (TCP) and user datagram protocol (UDP). The network layer is typically implemented using internet protocol (IP). These protocols can operate over a number of different physical protocols, including wired communication protocols, such as Ethernet, Token Ring, Frame Relay, SONET, and ATM, as well as wireless communication protocols, such as WiFi, CDMA, and LTE.
Referring to FIG. 2B, in an MPTCP implementation, the TCP layer is implemented with an MPTCP layer that utilizes multiple TCP subflows. Each TCP subflow communicates using a different IP connection, which may utilize a different physical layer. For example, one TCP subflow may utilize a Wifi physical layer, while another TCP subflow may utilize an LTE physical layer. From the standpoint of the application layer, however, there appears to be only a single TCP connection.